// 接口返回需要的基础字段
export interface baseRes<D = {}> {
  code: string | number
  errorMsg?: string
  msg?: string
  message?: string
  data: D //返回的数据字段
}
export interface PageParams {
  currentPage?: number
  pageNum?: number
  pageSize?: number
  page?: number
}
export interface PageData<D = {}> {
  currentPage: number
  page?: number
  pageSize: number
  count: number
  list?: D[]
}
export interface baseData {
  tempId: string
  sceneId: string
  thumbnail: string
  check: number
}
export interface coverData {
  engineLogoOn: boolean
  info: coverInfo
}
export interface coverInfo {
  mobileOpeningVideo: any
  sceneObjs: sceneObj
  isLikes: boolean
  isMessage: boolean
  isShare: boolean
  danmu: boolean
  browseService: boolean
  buttonOptions: coverButtonOptions
  closeMusic: null | boolean
  contact: coverContact
  custService: boolean
  custServiceCode: null | string
  customLogo: null | string
  descFlag: boolean
  description: string
  durationEndTs: null | string
  enLang: boolean
  extobjs: any[]
  floor: number
  hideLogo: boolean
  password: string
  liveService: boolean
  loadingThumb: null | string
  loadingVideo: null | string
  lupt: number
  lut: null | string
  lutName: null | string
  lutid: null | string
  lutsz: null | string
  minimap: coverMinimap
  mobileThumb: null | string
  modelRotate: boolean
  musicAutoPlay: boolean
  musicFile: null | string
  musicId: null | string
  musicName: null | string
  myBrowseService: boolean
  myCustService: boolean
  name: string
  panoImg: null | string
  pluginFlag: boolean
  renderOver: boolean
  sceneId: string
  sceneShare: null | string
  sceneTemplateLive: coverSceneTemplateLive
  scripts: string[]
  showDescFlag: number
  startCamera: string
  tempid: string
  thumb: string
  titleFlag: boolean
  token: null | string
  typeId: string
  usePwd: boolean
  useThumbLoading: boolean
  username: string
  viewCount: number
  openingVideo: {
    show: boolean
    url: string
    name: string
    showSkip: boolean
  }
  openTour: {
    show: boolean
    tour: string
    changeBGM: boolean
  }
  outline: {
    show: boolean
  }
  guidePage: {
    show: boolean
  }
  customButton: {
    visible: boolean
    customBtnList?: any
  }
  spotSwitchBtn: {
    show: boolean
  }
}
export interface sceneObj {
  tours: any[]
  views: any[]
}
export interface coverButtonOptions {
  comment: boolean
  headerLink: boolean
  hideAll: boolean
  hideHeader: boolean
  share: boolean
}
export interface coverContact {
  contactAddress: string
  contactEmail: null | string
  contactName: string
  contactPhone: string
  externalUrl: null | string
  headimgurl: string
  userId: string
  wxQrcode: null | string
}
export interface coverMinimap {
  mapImage: string
  rect: number
  show: boolean
  position: {
    x: number
    y: number
  }
}
export interface coverSceneTemplateLive {
  liveEndTime: null | string
  liveOpenType: number
  liveStartTime: null | string
  liveState: boolean
  liveUrl: null | string
  senceTemplateId: null | string
}
export interface censusInfo {
  likeCount: number
  viewCount: number
}
export interface browseConfigInfo {
  id?: string
  angleStatus?: boolean
  angleHeight?: string
  virtualJoystickSpeed?: string
  virtualCharacterStatus?: boolean
  virtualCharacter: []
  browseConfig: {}
  interactConfig: {}
}

export interface PageParams {
  currentPage?: number
  pageNum?: number
  pageSize?: number
  page?: number
}
